home *** CD-ROM | disk | FTP | other *** search
/ TPUG - Toronto PET Users Group / TPUG Users Group CD / TPUG Users Group CD.iso / CRS / crs19.d81 / spectrum.sfx / multi hi-res (.txt) < prev    next >
Commodore BASIC  |  1992-09-01  |  4KB  |  152 lines

  1. 4 B=0:C=3
  2. 5 POKE53280,0:POKE53281,0
  3. 10 IF A=0THEN A=1:LOAD"KS/L",8,1
  4. 20 BASE=2*4096:POKE53272,PEEK(53272)OR8
  5. 30 POKE53265,PEEK(53265)OR32
  6. 35 POKE53270,PEEK(53270)OR16
  7. 50 FORI=1024TO2023:POKEI,130:NEXT
  8. 52 FORI=55296TO56295:POKEI,3:NEXT
  9. 55 V=53248
  10. 60 FORE=832TO894:READF:POKEE,F:NEXTE
  11. 70 POKEV+21,1:POKEV+39,1:POKE2040,13
  12. 80 POKEV,24:POKEV+1,50
  13. 100 DATA 252,0,0,248,0,0,240,0,0,248,0,0,220,0,0,142,0,0,7,0,0,3,128,0,1,0,0,0,0
  14. 105 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
  15. 197 C=3
  16. 198 EF=1
  17. 199 X=25:Y=50
  18. 200 GET P$
  19. 201 IF P$="Q"THEN C=0
  20. 202 IF P$="W"THEN C=1
  21. 203 IF P$="E"THEN C=2
  22. 204 IF P$="R"THEN C=3
  23. 205 IF P$="C" THEN 3000
  24. 206 IF P$="S" THEN 4000
  25. 207 IF P$="L" THEN 4050
  26. 208 IF P$="X" THEN 5000
  27. 209 IF P$="[147]" THEN 8000
  28. 210 GOSUB 256
  29. 212 JV=PEEK(56320)
  30. 213 IF JV=111 THEN 1680
  31. 214 IF JV=110 THEN 1300
  32. 215 IF JV=109 THEN 1350
  33. 216 IF JV=107 THEN 1400
  34. 217 IF JV=106 THEN 1450
  35. 218 IF JV=105 THEN 1500
  36. 219 IF JV=103 THEN 1550
  37. 220 IF JV=102 THEN 1600
  38. 221 IF JV=101 THEN 1650
  39. 222 IF JV=127 THEN 200
  40. 223 IF JV=126THEN 300
  41. 224 IF JV=125THEN 350
  42. 226 IF JV=123THEN 400
  43. 228 IF JV=122THEN 450
  44. 230 IF JV=121THEN 500
  45. 232 IF JV=119THEN 550
  46. 234 IF JV=118THEN 600
  47. 236 IF JV=117THEN 650
  48. 254 IF P=7THEN 4050
  49. 255 GOTO 200
  50. 256 IF P$="0" THEN TX=0
  51. 257 IF P$="1" THEN TX=1
  52. 258 IF P$="2" THEN TX=2
  53. 259 IF P$="3" THEN TX=3
  54. 260 IF P$="4" THEN TX=4
  55. 261 IF P$="5" THEN TX=5
  56. 262 IF P$="6" THEN TX=6
  57. 263 IF P$="7" THEN TX=7
  58. 264 IF P$="8" THEN TX=8
  59. 265 IF P$="9" THEN TX=9
  60. 299 RETURN
  61. 300 Y=Y-1:GOTO 1800
  62. 350 Y=Y+1:GOTO 1800
  63. 400 X=X-2:GOTO1800
  64. 450 X=X-2:Y=Y-1:GOTO1800
  65. 500 X=X-2:Y=Y+1:GOTO1800
  66. 550 X=X+2:GOTO1800
  67. 600 X=X+2:Y=Y-1:GOTO1800
  68. 650 X=X+2:Y=Y+1:GOTO1800
  69. 1300 Y=Y-1:GOTO1700
  70. 1350 Y=Y+1:GOTO1700
  71. 1400 X=X-2:GOTO1700
  72. 1450 X=X-2:Y=Y-1:GOTO1700
  73. 1500 X=X-2:Y=Y+1:GOTO1700
  74. 1550 X=X+2:GOTO1700
  75. 1600 X=X+2:Y=Y-1:GOTO1700
  76. 1650 X=X+2:Y=Y+1:GOTO1700
  77. 1680 X=X+0:Y=Y+0:GOTO 1700
  78. 1700 AX=X-25:AY=Y-50:BX=AX+1
  79. 1701 FOR DE=0TO TXSTEP2:FORDF=0TOTX
  80. 1702 IF C=0 THEN 1720
  81. 1704 IF C=1 THEN 1740
  82. 1705 IF C=2 THEN 1760
  83. 1706 IF C=3 THEN 1780
  84. 1720 RO=INT(AY/8):CH=INT(AX/8):LI=AYAND7:BI=7-(AXAND7):BY=BA+RO*320+CH*8+LI
  85. 1725 POKE BY,PEEK(BY)AND(255-2^BI)
  86. 1730 RO=INT(AY/8):CH=INT(BX/8):LI=AYAND7:BI=7-(BXAND7):BY=BA+RO*320+CH*8+LI
  87. 1735 POKE BY,PEEK(BY)AND(255-2^BI):GOTO 1799
  88. 1740 RO=INT(AY/8):CH=INT(AX/8):LI=AYAND7:BI=7-(AXAND7):BY=BA+RO*320+CH*8+LI
  89. 1745 POKE BY,PEEK(BY)OR(2^BI)
  90. 1750 RO=INT(AY/8):CH=INT(BX/8):LI=AYAND7:BI=7-(BXAND7):BY=BA+RO*320+CH*8+LI
  91. 1755 POKE BY,PEEK(BY)AND(255-2^BI):GOTO 1799
  92. 1760 RO=INT(AY/8):CH=INT(AX/8):LI=AYAND7:BI=7-(AXAND7):BY=BA+RO*320+CH*8+LI
  93. 1765 POKE BY,PEEK(BY)AND(255-2^BI)
  94. 1770 RO=INT(AY/8):CH=INT(BX/8):LI=AYAND7:BI=7-(BXAND7):BY=BA+RO*320+CH*8+LI
  95. 1775 POKE BY,PEEK(BY)OR(2^BI):GOTO 1799
  96. 1780 RO=INT(AY/8):CH=INT(AX/8):LI=AYAND7:BI=7-(AXAND7):BY=BA+RO*320+CH*8+LI
  97. 1785 POKE BY,PEEK(BY)OR(2^BI)
  98. 1790 RO=INT(AY/8):CH=INT(BX/8):LI=AYAND7:BI=7-(BXAND7):BY=BA+RO*320+CH*8+LI
  99. 1795 POKE BY,PEEK(BY)OR2^BI:GOTO 1799
  100. 1799 AY=AY+1:NEXT:AY=Y-50:AX=AX+2:BX=BX+2:NEXT
  101. 1800 IF Y<50 THEN Y=50
  102. 1802 IF Y>250 THEN Y=250
  103. 1804 POKE V+1,Y
  104. 1806 IF X>345 THEN X=345
  105. 1808 IF X<25 THEN X=25
  106. 1810 IF X>255 THEN 1820
  107. 1812 POKEV+16,0:POKEV,X
  108. 1814 GOTO 200
  109. 1820 POKEV+16,1:W=X-255:POKEV,W:GOTO 200
  110. 3000 IFC=0 THEN 3100
  111. 3001 IFC=1 THEN 3200
  112. 3002 IFC=2 THEN 3300
  113. 3003 IFC=3 THEN 3400
  114. 3100 PI=PEEK(53281):PI=PI+1:IFPI=16THEN PI=0
  115. 3104 POKE53281,PI:GOTO200
  116. 3200 PI=PEEK(1065)
  117. 3201 IF NOT (PI-128)<0 THEN PR=PI-128
  118. 3202 IF NOT (PR-64)<0 THEN PR=PR-64
  119. 3203 IF NOT (PR-32)<0 THEN PR=PR-32
  120. 3204 IF NOT (PR-16)<0 THEN PR=PR-16
  121. 3205 PI=PI-PR:PR=PR+1:IFPR=16THEN PR=0
  122. 3206 PI=PI+PR
  123. 3207 FORNX=1065TO1864STEP40:FORNY=0TO11:POKENX+NY,PI:NEXT:NEXT:GOTO 200
  124. 3300 PI=PEEK(1065)
  125. 3301 IF NOT (PI-128)<0 THEN PR=PI-128
  126. 3302 IF NOT (PR-64)<0 THEN PR=PR-64
  127. 3303 IF NOT (PR-32)<0 THEN PR=PR-32
  128. 3304 IF NOT (PR-16)<0 THEN PR=PR-16
  129. 3305 PI=PI-PR
  130. 3306 PI=PI+16:IF PI=256 THEN PI=0
  131. 3307 PI=PI+PR
  132. 3308 FORNX=1065TO1864STEP40:FORNY=0TO11:POKENX+NY,PI:NEXT:NEXT:GOTO 200
  133. 3400 PI=PEEK(55337):PI=PI+1:IFPI=16 THEN PI=0
  134. 3404 POKE55337,PI:GOTO200
  135. 4000 POKE53265,PEEK(53265)AND223:POKE53270,PEEK(53270)AND239
  136. 4002 POKE53272,21:POKE53265,155
  137. 4004 PRINT"[147]":SYS49155:PRINT"[147]"
  138. 4006 RUN
  139. 4050 POKE53265,PEEK(53265)AND223:POKE53270,PEEK(53270)AND239
  140. 4052 POKE53272,21:POKE53265,155
  141. 4054 PRINT"[147]":SYS49152:PRINT"[147]"
  142. 4056 RUN
  143. 5000 POKE53265,PEEK(53265)AND223:POKE53270,PEEK(53270)AND239
  144. 5001 POKE53272,21:POKE53265,155
  145. 5002 GOSUB 5010:POKE198,4
  146. 5003 PRINT"[147]LOAD"CHR$(34)"SPECTRUM V1.0";
  147. 5004 PRINTCHR$(34)",8";
  148. 5005 POKE631,13:POKE632,82:POKE633,117:POKE634,13
  149. 5006 END
  150. 5010 FORTG=832TO894:POKETG,0:NEXT:RETURN
  151. 8000 FORI=BASETOBASE+7999:POKEI,0:NEXT:GOTO200
  152.